package com.easyidea.its.domain.service.tracklog;

import java.util.Collection;
import java.util.Date;
import java.util.List;

import com.easyidea.its.domain.model.passport.TrackLog;
import com.easyidea.its.domain.service.base.BaseService;
import com.easyidea.its.web.dto.CarSeizureDto;
import com.easyidea.its.web.dto.StatisticsDto;

public interface TrackLogService extends BaseService<TrackLog> {
	/**
	 * 根据条件获取最近跟踪资料
	 * @param passPortName
	 * @param direction
	 * @param serarchLeastRecord TODO
	 * @param tracklogId TODO
	 * @param passTime TODO
	 * @return
	 */
	TrackLog getLatestTrackLogByCondition(String passPortName, String direction,
					boolean serarchLeastRecord, Integer tracklogId, Date passTime);
	
	/**
	 * 根据条件查询车辆追踪记录
	 * @param carSeizureDto
	 * @param startIndex TODO
	 * @param pageSize TODO
	 * @return
	 */
	List<TrackLog> getTrackLogsByCondition(CarSeizureDto carSeizureDto, int startIndex, int pageSize);
	
	int getTrackLogsCountByCondition(CarSeizureDto carSeizureDto);
	
	 boolean modifyPlatNumber(Integer id, String plateNumber); 
	 
	 Collection<Object[]> statisticsByCondition(StatisticsDto statisticsDto);
}
